<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="css/reset.css">
    <link rel="stylesheet" href="css/iconfont.css">
    <link rel="stylesheet" href="css/main.css">
    <!-- jq -->
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <!-- 模板引擎 -->
    <script src="./libs/template-web.js"></script>
    <!-- 导入时间插件 -->
    <script src="./libs/jedate/js/jedate.js"></script>
    <link rel="stylesheet" href="./libs/jedate/css/jeDate-test.css">
    <link rel="stylesheet" href="./libs/jedate/css/jedate.css">

    <!-- 导入文本插件 -->
    <script src="./libs/wangEditor/wangEditor.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章编辑
        </div>
        <div class="container-fluid common_con">
            <form class="form-horizontal article_form" id="form">
                <div class="form-group">
                    <label for="inputTitle" class="col-sm-2 control-label">文章标题：</label>
                    <div class="col-sm-10">
                        <input type="text" name="title" class="form-control title" id="inputTitle" value="文章标题文字">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCover" class="col-sm-2 control-label">文章封面：</label>
                    <div class="col-sm-10">
                        <img src="images/pic06.jpg" class="article_cover">
                        <input name="cover" type="file" id="inputCover">
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputCategory" class="col-sm-2 control-label">文章类别：</label>
                    <div class="col-sm-4">
                        <select class="form-control category" name="categoryId">
                            <option>类别一</option>
                            <option>类别二</option>
                            <option>类别三</option>
                            <option selected>类别四</option>
                            <option>类别五</option>
                        </select>
                    </div>
                </div>
                <div class="form-group">
                    <label class="col-sm-2 control-label">发布时间：</label>
                    <div class="jeinpbox">
                        <input type="text" class="jeinput" id="testico" placeholder="YYYY-MM-DD" name="date">
                        <div class="icons jebtns"></div>
                    </div>
                </div>
                <div class="form-group">
                    <label for="inputEmail3" class="col-sm-2 control-label">文章内容：</label>
                    <div class="col-sm-10">
                        <div id="edit">
                            <p>欢迎使用 <b>谷大师</b> 富文本编辑器</p>
                        </div>
                    </div>
                </div>
                <div class="form-group">
                    <div class="col-sm-offset-2 col-sm-10">
                        <button type="submit" class="btn btn-success btn-edit">修改</button>
                        <button type="submit" class="btn btn-default btn-draft">存为草稿</button>
                    </div>
                </div>
            </form>
        </div>
    </div>
</body>
<!-- 下拉框模板引擎 -->
<script type="text/html" id="tmp_control">
    {{each}}
    <option value="{{$value.id}}">{{$value.name}}</option>
    {{/each}}
</script>
<script src="./libs/https.js"></script>
<script>
    // 入口函数
    $(function(){
    //图片预览
        $('#inputCover').on('change',function(e){
            //获取图片路径
            let picFile = this.files[0]
            let picUrl = URL.createObjectURL(picFile)
            //赋值图片路径
            $('.article_cover').attr('src',picUrl)
        })
    //下拉框
        //Ajax请求数据
        $.ajax({
            type: 'get',
            url: BigNew.category_list,
            success: function(answer){
                // console.log(answer)
                if(answer.code == 200) {//if判断数据请求成功
                    let data = answer.data//声明变量保存data
                    // console.log(data)
                    //将下拉框模板引擎加载到页面
                    let htmlStr = template('tmp_control',data)
                    $('.category').html(htmlStr)
                }
                
            }
        })
    //时间显示
    $('.jebtns').on('click', function (e) {
                    // 调用日期插件的核心方法
                    jeDate('#testico', {
                        trigger: false,
                        format: 'YYYY-MM-DD',
                        theme: {
                            bgcolor: "#007ccc",
                            pnColor: "#ec4141"
                        },
                        zIndex: 20000
                    })
        })
    //富文本插件
        const E = window.wangEditor
        const editor = new E("#edit")
        // 或者 const editor = new E(document.getElementById('div1'))
        editor.create()
        // 6. 获得跳转文章的id!!!!!!
        let dataid = window.location.search.split('=')[1];
        console.log(dataid)

        // 7. 根据文章id发起ajax请求,获得数据
        $.ajax({
            type: 'get',
            url: BigNew.article_search,
            data: {
                id: dataid
            },
            success: function(backData) {
                console.log(backData);
                if (backData.code == 200) {
                    // 8. 将返回的数据渲染到指定结构
                    let data = backData.data;
                    $('.title').val(data.title);
                    $('.article_cover').attr('src',data.cover);
                    $('.category').val(data.categoryId);
                    $('#testico').val(data.date);
                    editor.txt.text(data.content);
                }
            }
        })
    // //给修改按钮注册点击事件
    // $('.btn-edit, .btn-draft').on('click',function(e){
    //     e.preventDefault()//阻止默认点击事件
    //     let state = ''//声明变量保存点击按钮的text
    //     if($(this).text() == '修改'){ //判断点击按钮的text为修改时
    //         state = '已发布'//赋值修改为已发布
    //     }else {
    //         state = '草稿'//赋值修改为草稿
    //     }
    //     let fd = new FormData(document.querySelector('form'))
    //     //手动添加属性
    //     fd.append('id', dataid)
    //     fd.append('content', editor.txt.text())
    //     fd.append('state', state)
    //     //ajax发起请求
    //     $.ajax({
    //         type: 'push',
    //         url: BigNew.article_edit,
    //         data: fd,
    //         contentType: false,
    //         processData: false,
    //         success: function(answer){
    //             // console.log(answer)
    //         }
    //     })
    // })
    $('.btn-edit, .btn-draft').on('click', function (e) {
            e.preventDefault()
            // 10. 区分按钮的目的
            let state = ''
            if ($(this).text() == '修改') {
                state = '已发布'
            } else {
                state = '草稿'
            }

            // 11. 利用FormData获得数据
            let fd = new FormData(document.querySelector('form'))// title cover date categoryId

            // 12. 手动添加fd成员
            fd.append('id', dataid)
            fd.append('content', editor.txt.text())
            fd.append('state', state)
            // 如果发现请求报错,请打印fd中的7个成员

            // 13. 发起ajax请求,修改文章
            $.ajax({
                type: 'post',
                url: BigNew.article_edit,
                data: fd,
                contentType: false,
                processData: false,
                success: function(answer) {
                    // console.log(backData);
                    if (answer.code == 200) {
                        alert(answer.msg)
                        window.location = './article_list.html'
                    }
                }
            })
        })
    })
</script>
</html>
